Dynamic Verification of C++ Generic Algorithms
نویسندگان
چکیده
Dynamic veriication is a new approach to formal veriication, applicable to generic algorithms such as those found in the Standard Template Library (STL, part of the Draft ANSI/ISO C++ Standard Library). Using behavioral abstraction and symbolic execution techniques, veriications are carried out at a meta-level such that the results can be used in a variety of instances of the generic algorithms without repeating the proofs. This is achieved by substituting for type parameters of generic algorithms special data types that model generic concepts by accepting symbolic inputs and deducing outputs using inference methods. By itself, this symbolic execution technique supports testing of programs with symbolic values at a meta-level. For formal verii-cation we also need to generate multiple program execution paths and use assertions (to handle while loops, for example), but we show how this can be achieved via directives to a conventional debugger program and an analysis database. The assertions must still be supplied, but they can be packaged separately and evaluated as needed by appropriate transfers of control orchestrated via the debugger. Unlike all previous veriication methods, the dynamic veriication method thus works without having to transform source code or process it with special interpreters. We include an example of the formal veriication of an STL generic algorithm.
منابع مشابه
Mathematical Programming Models for Solving Unequal-Sized Facilities Layout Problems - a Generic Search Method
This paper present unequal-sized facilities layout solutions generated by a genetic search program named LADEGA (Layout Design using a Genetic Algorithm). The generalized quadratic assignment problem requiring pre-determined distance and material flow matrices as the input data and the continuous plane model employing a dynamic distance measure and a material flow matrix are discussed. Computa...
متن کاملPoint Dose Measurement for Verification of Treatment Planning System using an Indigenous Heterogeneous Pelvis Phantom for Clarkson, Convolution, Superposition, and Fast Superposition Algorithms
Background: Nowadays, advanced radiotherapy equipment includes algorithms to calculate dose. The verification of the calculated doses is important to achieve accurate results. Mostly homogeneous dosimetric phantoms are available commercially which do not mimic the actual patient anatomy; therefore, an indigenous heterogeneous pelvic phantom mimicking actual human pelvic region has been used to ...
متن کاملControl Simulation and Experimental Verification of Maximum Power Point Tracking Based on RT-LAB (TECHNICAL NOTE)
The maximum power point tracking (MPPT) control in the Photovoltaic system is the key control technology, however present controller has the disadvantages of long development cycle, high cost and complex verification, and there are some disadvantages carrying out totally physical simulation or totally digital simulation of different control algorithms. This paper carried out design of hardware ...
متن کاملData Clustring Using A New CGA(Chaotic-Generic Algorithm) Approach
Clustering is the process of dividing a set of input data into a number of subgroups. The members of each subgroup are similar to each other but different from members of other subgroups. The genetic algorithm has enjoyed many applications in clustering data. One of these applications is the clustering of images. The problem with the earlier methods used in clustering images was in selecting in...
متن کاملSufficient Conditions for Computational Intractability Regarding Generic Algorithms
The generic group model is a valuable methodology for analyzing the computational hardness of the number-theoretic problems used in cryptography. Although generic hardness proofs exhibit many similarities, still the computational intractability of every newly introduced problem needs to be proven from scratch, a task that can easily become complicated and cumbersome when done rigorously. In thi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IEEE Trans. Software Eng.
دوره 23 شماره
صفحات -
تاریخ انتشار 1997